package co.edu.usbcali.unidades.modelo.control;

import co.edu.usbcali.unidades.modelo.Persona;

import java.math.BigDecimal;

import java.util.*;

/**
 * interface PersonaLogic
 * 
 * @author Zathura Code Generator http://code.google.com/p/zathura
 * 
 */
public interface IPersonaLogic {
	public List<Persona> getPersona() throws Exception;

	public void savePersona(String perCedula, String perCelular,
			String perCorreo, String perPrimerApelli, String perPrimerNom,
			String perSegundoApelli, String perSegundoNom, String perTelefono,
			String estCodigo_Estado, String tipCodigoDoc_TipoDocumento,
			String tipCodigoP_TipoPersona) throws Exception;

	public void savePersonaPropietario(String perCedula, String perCelular,
			String perCorreo, String perPrimerApelli, String perPrimerNom,
			String perSegundoApelli, String perSegundoNom, String perTelefono,
			String estCodigo_Estado, String tipCodigoDoc_TipoDocumento,
			String tipCodigoP_TipoPersona, String codLocalizacion,
			String codInmueble) throws Exception;

	public void deletePersona(String perCedula, String tpDoc) throws Exception;

	public void updatePersonaAdmin(String perCedula, String perCelular,
			String perCorreo, String perPrimerApelli, String perPrimerNom,
			String perSegundoApelli, String perSegundoNom, String perTelefono,
			String estCodigo_Estado, String tipCodigoDoc_TipoDocumento,
			String tipCodigoP_TipoPersona) throws Exception;

	public void updatePersonaPropietario(String perCedula, String perCelular,
			String perCorreo, String perPrimerApelli, String perPrimerNom,
			String perSegundoApelli, String perSegundoNom, String perTelefono,
			String estCodigo_Estado, String tipCodigoDoc_TipoDocumento,
			String tipCodigoP_TipoPersona, String codLocalizacion,
			String codInmueble) throws Exception;

	public Persona getPersona2(String perCedula, String tpDoc) throws Exception;

	public Persona getPersona(String perCedula) throws Exception;

	public List<Persona> findByCriteria(Object[] variables,
			Object[] variablesBetween, Object[] variablesBetweenDates)
			throws Exception;

	public List<Persona> findPagePersona(String sortColumnName,
			boolean sortAscending, int startRow, int maxResults)
			throws Exception;

	public Long findTotalNumberPersona() throws Exception;

	public Persona getPersona3(String perCedula, String tpPersona, String TpDoc)
			throws Exception;
	
	 public List<Persona> getAdminNombreParcial(String nombreParcial)throws Exception;
}
